1. Field of the Invention
This invention relates to a communication system, such as a network of interconnected nodes for sending isochronous streaming data across a synchronous network, wherein the isochronous data can be sent within a segment of each frame using a coding violation within each segment to keep track of where, within the segment, the isochronous data exists.
2. Description of the Related Art
Communication systems are generally well-known as containing at least two nodes interconnected by a transmission line. A node can function as a data source or destination. If the node is to receive and transmit data, then the node is a combination of a source and destination, and is sometimes known as a transceiver. The data source can transmit data in various forms. For example, the source can transmit in either an analog or digital domain. Typically, however, an analog signal is converted to a digital format before being transmitted across the transmission line to the destination.
It is generally desirable that the transmission line accommodate not only digital or analog data, but also data that can arrive in different forms, hereinafter known as “data types.” For example, sophisticated transmission protocols can accommodate streaming data, packetized data, and control data. Streaming data is generally recognized as data that has a temporal relationship between samples produced from a node. The relationship between those samples must be maintained across the transmission line to prevent perceptible errors, such as gaps or altered frequencies. A loss in the temporal relationship can cause a receiver to present jitter, echo or, in the worst instance, periodic blanks in a voice or video stream. Converse to streaming data, packetized data is data which need not maintain the sample rate or temporal relationship of that data and, instead, can be sent as disjointed bursts across a transmission line. The packets of data can be sent across the transmission line at virtually any rate at which that transmission line transfers data and is not dependent in any fashion on any sampling frequency since packetized data is generally recognized as non-sampled data.
In addition to streaming data and packetized data, another type of data can be control data. Depending on how the control data is used (either in a streaming or packetized environment), control data may be either time dependent or non-time dependent on the data or node in which it controls. Moreover, streaming data can be considered as either synchronous data or isochronous data. Synchronous forms of streaming data is data sent across the transmission line in sync with the rate by which the streaming data is sampled. However, it may be that the transmission line transfers data at a different rate than the rate at which the node streams, or “samples,” data. In order to maintain the temporal relationship between samples of the streaming data, isochronous transfer protocols are needed to accommodate those differences in order for the isochronous data to be played at the destination without perceptible gaps, errors, jitter or echo.
An optimal transmission line can transfer different types of data. Coupled to the transmission line, which can be either copper wire, optical fiber, or wireless, are multiple nodes. Each node can accommodate at least one multimedia device. For example, a telephone multimedia device can be used to send and receive voice information and, depending on differences in sampling rate (i.e., “fs”) at the telephone and the frame transfer rate (i.e., “FSR”) within the transmission line, the voice information can be either sent as isochronous data or synchronous data. Depending on the relationship between the frame sync rate (FSR) and the sampling rate (fs) streaming data can be presented to the transmission line as either synchronous data or isochronous data. In any instance, control information can be sent to the multimedia device to set up the transmission or to control the receipt of the streaming (isochronous or synchronous) data. In addition to transmitting streaming and control data, the transmission line should also be able to transmit packet information between computers. Packetized data includes executable programs and/or files sent as bursts of digital data across the transmission line.
Multimedia devices operating as sources can therefore produce not only different types of data in different forms, but also data that will arrive at the transmission line at different rates. For example, a voice from a telephone handset is a continuous stream of data having a substantially constant average data rate and a temporal relationship between the samples produced. The isochronous or synchronous forms of streaming data can, therefore, represent sounds (in the example of a telephone or CD player) or images (in the example of DVD player). While telephones, CD players and DVD players send isochronous or synchronous streaming data across a network, a computer sends bursts of packets usually in TCP/IP form across the network.
A need exists in implementing a communication system that can accommodate both streaming and non-streaming data transfers. More importantly, an improved communication system is needed that can send data sampled at a dissimilar rate than the transmission rate across the transmission media, and can maintain the temporal and timed relationship of that streaming data at a destination which reads the streaming data in real time. The desired communication system must, therefore, be synchronized to the transmission of various types of data at, or substantially near, the sampling rate of one or more multimedia devices connected to the transmission medium. The improved communication system must not simply accommodate both streaming and non-streaming data, but also seamlessly accommodate isochronous and synchronous streaming data among a plurality of nodes operating as multimedia devices. In this fashion, the desired communication system can efficiently transfer the different data types synchronously across the network between devices that sample at the same rate as the frame rate or at a rate different from the frame rate and, therefore, an improvement exists by not having the sampling rate dependent on the frame rate.